package com.tarzan.edu.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tarzan.edu.entity.EduTeacher;
import com.tarzan.edu.entity.api.EduTeacherApiResp;
import com.tarzan.edu.entity.request.EduTeacherReq;
import com.tarzan.edu.entity.response.EduTeacherResp;

import java.util.List;

/**
 * @author liujinshan
 * @title: IEduService
 * @projectName com.tarzan.edu.service
 * @description: TODO
 * @date 2021/5/21 15:44
 */
public interface IEduTeacherService extends IService<EduTeacher> {

    /** @title insert
     * @description TODO 新增讲师
     * @param eduTeacher
     * @return void
     * @throws
     * @author liujinshan
     * @data 2021/5/21 15:54
     */
    void insert(EduTeacher eduTeacher);

    /** @title update
     * @description TODO 修改讲师信息
     * @param eduTeacher
     * @return void
     * @throws
     * @author liujinshan
     * @data 2021/5/21 15:59
     */
    void update(EduTeacher eduTeacher);

    /** @title delete
     * @description TODO 删除讲师信息
     * @param id
     * @return void
     * @throws
     * @author liujinshan
     * @data 2021/5/21 16:02
     */
    void delete(String id);

    /** @title findTeacherPageInfo
     * @description TODO 获取分页讲师信息
     * @param eduTeacherReq
     * @return com.baomidou.mybatisplus.core.metadata.IPage<com.tarzan.edu.entity.response.EduTeacherResp>
     * @throws
     * @author liujinshan
     * @data 2021/5/21 16:12
     */
    IPage<EduTeacherResp> findTeacherPageInfo(EduTeacherReq eduTeacherReq);

    /**
      * @description 根据id查询讲师相细信息
      * @author liujinshan
      * param id
      * @return com.tarzan.edu.entity.response.EduTeacherResp
      * @throws
      * @date 2021-5-23 14:47
      */
    EduTeacherResp findTeacherById(String id);

    /**
     * @title findAllTeacherInfo
     * @description TODO 查询所有讲师信息
     * @param
     * @return java.util.List<com.tarzan.edu.entity.response.EduTeacherResp>
     * @author liujinshan
     * @data 2021/8/13 10:25
     */
    List<EduTeacherResp> findAllTeacherInfo();

    /**
     * @title findTeacherFrontById
     * @description TODO
     * @param id
     * @return com.tarzan.edu.entity.api.EduTeacherApiResp 
     * @author liujinshan
     * @data 2021/10/27 14:10
     */
    EduTeacherApiResp findTeacherFrontById(String id);
}
